obj-y := process.o semaphore.o signal.o entry.o traps.o irq.o \
ptrace.o ioport.o ldt.o setup.o time.o sys_i386.o \
- i386_ksyms.o i387.o evtchn.o ctrl_if.o pci-dma.o
+ i386_ksyms.o i387.o evtchn.o ctrl_if.o pci-dma.o \
+ reboot.o
ifdef CONFIG_PCI
obj-y += pci-i386.o pci-pc.o
}
}
-void machine_restart(char *__unused)
-{
- /* We really want to get pending console data out before we die. */
- extern void xencons_force_flush(void);
- xencons_force_flush();
- HYPERVISOR_reboot();
-}
-
-void machine_halt(void)
-{
- machine_power_off();
-}
-
-void machine_power_off(void)
-{
- /* We really want to get pending console data out before we die. */
- extern void xencons_force_flush(void);
- xencons_force_flush();
- HYPERVISOR_shutdown();
-}
-
extern void show_trace(unsigned long* esp);
void show_regs(struct pt_regs * regs)
ln -sf ../../i386/kernel/sys_i386.c
ln -sf ../../../${LINUX_26}/arch/xen/kernel/ctrl_if.c
ln -sf ../../../${LINUX_26}/arch/xen/kernel/evtchn.c
+ln -sf ../../../${LINUX_26}/arch/xen/kernel/reboot.c
ln -sf ../../../${LINUX_26}/arch/xen/i386/kernel/ioport.c
ln -sf ../../../${LINUX_26}/arch/xen/i386/kernel/pci-dma.c
+#include <linux/version.h>
#include <linux/module.h>
+#include <linux/reboot.h>
#include <asm-xen/hypervisor.h>
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0)
int reboot_thru_bios = 0; /* for dmi_scan.c */
+#endif
void machine_restart(char * __unused)
{
HYPERVISOR_reboot();
}
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0)
EXPORT_SYMBOL(machine_restart);
+#endif
void machine_halt(void)
{
- /* We really want to get pending console data out before we die. */
- extern void xencons_force_flush(void);
- xencons_force_flush();
- for ( ; ; ) /* loop without wasting cpu cycles */
- {
- HYPERVISOR_shared_info->vcpu_data[0].evtchn_upcall_pending = 0;
- HYPERVISOR_block();
- }
+ machine_power_off();
}
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0)
EXPORT_SYMBOL(machine_halt);
+#endif
void machine_power_off(void)
{
HYPERVISOR_shutdown();
}
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0)
EXPORT_SYMBOL(machine_power_off);
+#endif